Instant messaging (IM) has become a necessity for social networking and communications. IM users require IM software with high level of usability, stability, and security. Currently, IM software mainly support a one-to-one chatting/messaging mode, and one-to-many group chatting/messaging mode.
Microblog, as an extension of IM messaging propagation mechanism, has been rapidly developed. Microblog users can generally use about 140 words to express themselves. These messages can then be quickly spread, which enables messaging/chatting mode extending from one-to-one, one-to-many, to one-to-infinite. Based on their contents, microblog message pages may be categorized into various types, as shown in Table 1.
TABLE 1Content TypeNotesMicroblogThis is a core element of the microblog products - the Messagecontent posted by users may sometimes include additional information.“MessageWhen the user's operation triggers the logic of pulling pulling”message from the server, the “Message pulling” status informationshould be prompted to the user before completion of the message pulling.“Fault”Pulling operation is usually conducted on a batch basis informationaccording to an order of posting times of the microblog messages. There is an upper limit for the number of messages that can be pulled each time. Fault conditions occur when there is no overlapping on microblog postingtime between adjacent pulling batches. This means somemessages may exist between the adjacent pulling batcheswithout being pulled. Then, a “Fault” message should be prompted to the user.“Upper Limit”If the total message number of current message page is informationchecked to exceed the allowed maximum number aftercompletion of a message pulling operation, it should be prompted to the user that the upper limit is reached.“Other”Depending on application scenarios, some “other informationinformation” may be displayed on the microblog messagepage. For example, when entering a user's message page,the user's profile information may be displayed in additionto the microblog messages.
Different types of content are encapsulated into different interface controls. Microblog message page is then a container of controls and may function mainly on constructing, destructing, and sorting and managing layout of the controls in the message page.
However, constructing or destructing message page controls are often coupled with message updating logic for specific application scenarios, which affects reusability. For example, a home page may display messages posted by the owner/self and messages posted by other people the owner follows. A guest page may only display messages posted by a particular guest. Because the message sources for the home page and the guest page are different, two sets of message pulling (updating) mechanisms must be developed. Currently, the message pulling (updating) logic is coupled with the display logic. After the messages have been pulled, the home page and the guest page have to develop their own logics to display the messages according to the pulled information. In addition, during the sorting and managing layout of a message page, the sorting algorithm first performs sorting based on control types and then based on the posting time of the microblog messages. The sorting algorithm is very complex and provides poor performance.